Skip to content

Cut 1.0-alpha - #379

Merged
jdatcmd merged 1 commit into
mainfrom
release/1.0-alpha
Aug 4, 2026
Merged

Cut 1.0-alpha#379
jdatcmd merged 1 commit into
mainfrom
release/1.0-alpha

Conversation

@jdatcmd

@jdatcmd jdatcmd commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

What

Closes #367. VERSION goes to 1.0-alpha, [Unreleased] becomes [1.0-alpha]
dated 2026-08-04.

Every item on the checklist is closed:

item how
open bugs #358, #362, #363, #364, #376 all closed
docs accuracy pass #371
CHANGELOG #372
single-engine benchmarks #374
cross-engine benchmarks #377
five-major matrix green, 112 suites on each of PG15-19

Two decisions worth a reviewer's eye

The extension's default_version stays 1.0-dev, and the changelog now says so.
That field governs ALTER EXTENSION UPDATE. Moving it means renaming
pgcolumnar--1.0-dev.sql and adding an upgrade script that does not exist, and
breaking installs to make a version string tidy is the wrong trade for a pre-release.
SELECT extversion FROM pg_extension therefore reports 1.0-dev on a 1.0-alpha
build. Stated in the changelog preamble rather than left to be discovered.

A known-limitations section, in the changelog rather than only the tracker. An
alpha that ships its sharp edges in issues alone is an alpha that hides them:

Verification

docs_style, smoke and harness_selftest pass on the cut tree. No source change,
so the five-major matrix result for a2027ea stands.

🤖 Generated with Claude Code

VERSION goes to 1.0-alpha and CHANGELOG's [Unreleased] becomes [1.0-alpha]
dated 2026-08-04. Every item on the #367 checklist is closed: the open bugs
(#358, #362, #363, #364, #376), the docs accuracy pass, the changelog, the
single-engine and cross-engine benchmark re-measures, and a full five-major
matrix green at 112 suites on each of PG15 through PG19.

The extension's own default_version stays at 1.0-dev, and the changelog now
says so rather than leaving it to be discovered. That field governs ALTER
EXTENSION UPDATE; moving it needs an upgrade script that does not exist, and
breaking installs to make a version string tidy is the wrong trade. SELECT
extversion therefore reports 1.0-dev on a 1.0-alpha build.

Adds a known-limitations section, because an alpha that ships its sharp edges
in the tracker only is an alpha that hides them: the grouped parallel arm
declined on expression grouping keys (#369), the fetch cache's real memory
bound (#364), the index-fetch penalty being bounded rather than modelled
(#376), and point-lookup cost growing with table width.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

@ChronicallyJD ChronicallyJD left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed. The cut is right and the two decisions you flagged are both the right call —
especially keeping default_version at 1.0-dev and saying so rather than renaming
the SQL file and inventing an upgrade script to make a string tidy. I verified the
known-limitations entries against my own measurements: 62 MB against a 32 MB cap is
what I measured on #364, and the 47% is 127,699 ms against 187,521. Both correct.

Putting the sharp edges in the changelog rather than only the tracker is the right
instinct, and I would have argued for it if you had not done it.

One blocker: README contradicts the file it cites

README.md:27:

It is pre-release; the version marker is 1.0-dev, recorded in VERSION.

This PR makes VERSION say 1.0-alpha. So the README asserts the contents of a file
that is in the same commit and disagrees with it. That is the first thing a reader
sees, and it points straight at VERSION to check.

README.md:12 has the same problem in the badge:

<a href="VERSION"><img src="badges/version.svg" alt="Version 1.0-dev"></a>

and badges/version.svg itself renders version: 1.0-dev, so the badge needs
regenerating along with the alt text.

Suggested wording for line 27, which also carries your default_version point to
where people will actually hit it:

It is pre-release; the version marker is
1.0-alpha, recorded in VERSION. The extension's own default_version is still
1.0-dev, so SELECT extversion FROM pg_extension reports that.

Not blocking

The 1.0-dev references in PROVENANCE.md are all about the v1.0-dev tag and
the practice line it preserves. Those are historical fact and should stay exactly as
they are — I checked each one rather than pattern-matching the string.

pgcolumnar.control and pgcolumnar--1.0-dev.sql are the deliberate pair you
described, and they agree with each other.

Everything else checks out: VERSION, the [1.0-alpha] - 2026-08-04 heading, and the
checklist table all match what actually landed. Happy to see this merge once the README
matches VERSION; I can push that commit if you would rather not do another round.

@jdatcmd
jdatcmd merged commit 55f3316 into main Aug 4, 2026
11 checks passed
@jdatcmd
jdatcmd deleted the release/1.0-alpha branch August 4, 2026 17:46
jdatcmd pushed a commit that referenced this pull request Aug 4, 2026
1.0-alpha shipped with the front page contradicting the file it links to.
VERSION reads 1.0-alpha; README said "the version marker is 1.0-dev, recorded
in VERSION", one click from the file that disagrees. The badge said the same,
in its alt text and in badges/version.svg.

Raised on #379 before the merge and missed in the cut, so this is the follow-up
rather than a new finding.

The README now also carries the default_version note that was only in the
changelog. That field stays 1.0-dev deliberately, because moving it needs an
upgrade script that does not exist, so a user who checks
SELECT extversion FROM pg_extension sees 1.0-dev on a 1.0-alpha build. The
front page is where someone hits that surprise, so the explanation belongs
there too.

The badge SVG is widened from 104 to 118 pixels, because 1.0-alpha is two
characters longer than 1.0-dev and the label would otherwise clip.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
jdatcmd added a commit that referenced this pull request Aug 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1.0-alpha: shared checklist of what is left, and who has it

2 participants